## Структура подписок (subscription.json)

Файл `subscription.json` определяет, на какие события подписывается ваш скрипт. Ниже приведено описание каждого поля этой структуры:

- **filterType** (тип фильтрации): Это поле указывает тип источника события, на которые происходит подписка. Возможные значения:
  - `zones` - Зоны.
  - `partitions` - Разделы.
  - `resources` - Ресурсы.
  - `devices` - Устройства.

- **filterName** (название фильтра): Это поле представляет собой название параметра из файла `descriptor.json`, где указывается список идентификаторов источников. Если поле `filterName` равно `null`, то фильтрация происходит только по типу источника. Если `filterName` не равно `null`, то скрипт подпишетр фильтрация происходит и по типу, и по имени. Внимание: ошибка будет допущена, если вы укажете значение для `filterName`, а оставите `filterType` равным `null`.

- **list** (список подписок): Это массив объектов, представляющих собой фильтры событий, на которые скрипт подписывается. Каждый объект в этом массиве может иметь различные параметры фильтрации, зависящие от `filterType` и `filterName`, и может содержать следующие поля, каждый из которых является массивом: 

  - **metaType** (Метатип источника): Метатип источника события, на которые подписывается скрипт. Может принимать значения:
    - 0 - Зона
    - 1 - Ресурс

  - **type** (тип источника): Список типов источников событий, на которые подписывается скрипт. Например, `[1, 4]` означает типы источников событий с идентификаторами 1 и 4.

  - **class** (класс события): Список классов событий, на которые подписывается скрипт.

  - **reason** (причина события): Список причин событий, на которые подписывается скрипт.


Пример структуры подписок:

```json
{
  "subscriptions": [
    {
      "filterType": "partitions",
      "filterName": "resourcePartitions",
      "list": [
        {
            "metaType": [0],
            "type": [1, 4],
            "class": [0],
            "reason": [1]
        },
        {
            "metaType": [0],
            "class": [2]
        }
      ]
    },
    {
      "filterType": "resources",
      "filterName": null,
      "list": [
        {
          "type": [4]
        }
      ]
    },
    {
      "filterType": null,
      "filterName": null,
      "list": [
        {
          "class": [2, 3]
        }
      ]
    }
  ]
}
```
